package com.itheima.service;

import com.itheima.dto.ChangeCategoryDTO;
import com.itheima.dto.InsertCategoryDTO;
import com.itheima.entity.Category;
import com.itheima.vo.ResultVO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
/**
 *分类模块业务层实现接口
 * @author msi
 * @date 2022/5/17
 * @version 1.0
 */
@Transactional(rollbackFor =Exception.class )
public interface CategoryService {
    /**
     * 添加分类
     * @param insertCategoryDTO
     * @return
     */
    boolean insertCategory(InsertCategoryDTO insertCategoryDTO);

    /**
     * 修改分类
     * @param categoryDTO
     * @return
     */
    Boolean update(ChangeCategoryDTO categoryDTO);

    /**
     * 删除分类
     * @param id
     * @return
     */
    Boolean deleteById(String id);

    /**
     * 分类列表
     * @param type
     * @return
     */
    List<Category> selectList(Integer type);

    /**
     * 分页显示分类
     * @param page
     * @param pageSize
     * @return
     */
    ResultVO selectPage(Long page, Long pageSize);
}
